A Trace Semantics for Long-Running Transactions
نویسندگان
چکیده
A long-running transaction is an interactive component of a distributed system which must be executed as if it were a single atomic action. In principle, it should not be interrupted or fail in the middle, and it must not be interleaved with other atomic actions of other concurrently executing components of the system. In practice, the illusion of atomicity for a long-running transaction is achieved with the aid of compensation actions supplied by the original programmer: because the transaction is interactive, familiar automatic techniques of check-pointing and roll-back are no longer adequate. This paper constructs a model of long-running transactions within the framework of the CSP process algebra, showing how the compensations are orchestrated to achieve the illusion of atomicity. It introduces a method for declaring that a process is a transaction, and for declaring a compensation for it in case it needs to be rolled back after it has committed. The familiar operator of sequential composition is redefined to ensure that all necessary compensations will be called in the right order if a later failure makes this necessary. The techniques are designed to work well in a highly concurrent and distributed setting. In addition we define an angelic choice operation, implemented by speculative execution of alternatives; its judicious use can improve responsiveness of a system in the face of the unpredictable latencies of remote communication. Many of the familiar properties of process algebra are preserved by these new definitions, on reasonable assumptions of the correctness and independence of the programmer-declared compensations.
منابع مشابه
A New Strategy for Distributed Compensations with Interruption in Long-Running Transactions
We propose new denotational (trace-based) and operational semantics for parallel Sagas with interruption, prove the correspondence between the two and assess their merits w.r.t. existing proposals. The new semantics is realistic, in the sense that it guarantees that distributed compensations may only be observed after a fault actually occurred. Moreover, the operational semantics is defined in ...
متن کاملAn Extended cCSP with Stable Failures Semantics
Compensating CSP (cCSP) is an extension to CSP for modeling long-running transactions. It can be used to specify programs of service orchestration written in a programming language like WS-BPEL. So far, only an operational semantics and a trace semantics are given to cCSP. In this paper, we extend cCSP with more operators and define for it a stable failures semantics in order to reason about no...
متن کاملDynamic Recovering of Long Running Transactions
Most business applications rely on the notion of long running transaction as a fundamental building block. This paper presents a calculus for modelling long running transactions within the framework of the π-calculus, with support for compensation as a recovery mechanism. The underlying model of this calculus is the asynchronous polyadic π-calculus, with transaction scopes and dynamic installat...
متن کاملFailure-divergence semantics and refinement of long running transactions
Compensating CSP (cCSP) models long-running transactions. It can be used tospecify service orchestrations written in programming languages like WS-BPEL.However, the original cCSP does not allow to model internal (non-deterministic)choice, synchronized parallel composition, hiding or recursion. In this paper, weintroduce these operators and define for the extended language a fail...
متن کاملFlexible and Semantics-Based Support for Web Services Transaction Protocols
Increasing successful rate of long running transactions is challenging in the heterogeneous environment because business processes become complex and the spanning time are unpredictable. This paper focuses on reducing the failure rate of completing transactions. A novel algorithm for flexible and semantic-based support to executing long running transactions is proposed. The algorithm is to prov...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004